如何使用 SQL 注入工具对 Oracle 进行注入
如何使用SQL注入工具对Oracle进行注入?
这里简单介绍一下使用超级注入工具和sqlmap工具进行注入攻击的方法。
利用超级SQL注入工具实施SQL注入
超级SQL注入工具(SSQLInjection)是一款基于HTTP协议自组包的SQL注入工具,支持出现在HTTP协议任意位置的SQL注入、各种类型的SQL注入及HTTPS注入。其功能强大,操作便捷。获得存在SQL注入的URL后,根据工具要求填写信息后即可进行检测。在建立的测试环境中,show.jsp代码未对id参数做任何过滤,存在SQL注入漏洞,如下图为检测结果。
利用sqlmap实施SQL注入
sqlmap是一个自动化的SQL注入工具,其主要功能是通过扫描发现并利用给定的URL的SQL注入漏洞,目前支持的数据库有MSSQL、MySQL、Oracle和PostgreSQL。sqlmap采用4种独特的SQL注入技术,分别是盲推理SQL注入、UNION查询SQL注入、堆查询和基于时间的SQL盲注入。其广泛的功能和选项包括数据库指纹、枚举、数据库提取、访问目标文件系统,并能在获取完全操作权限时执行任意命令。
sqlmap支持的数据库有MySQL、Oracle、PostgreSQL、SQL Server、Access、DB2、SQLite、Firebird、Sybase和MaxDB。可以提供一个简单的URL、Burp或WebScarab请求日志文件,通过文本文档中的完整HTTP请求或者Google搜索匹配出结果页面,也可以自己定义一个正则表达式来判断用哪个地址进行测试。可以通过测试GET参数、POST参数、HTTP Cookie参数、HTTP User-Agent头和HTTP Referer头来确认是否存在SQL注入,也可以指定用逗号分隔的列表的具体参数来测试。可以通过设定HTTP(S)请求的并发数来提高盲注效率。
利用自己建立的测试环境实施攻击。运行
sqlmap.py-u"http://192.168.31.128:8080/show.jsp?id=4"-dbs
命令,即可对SQL注入漏洞进行利用。获取的数据库信息如下图所示。